/**
 * PageMarket
 * TransQueryAction.java
 * com.android.pagemarket.io.protocol.in
 * 
 */
package com.android.pagemarket.io.protocol.in;

import com.android.pagemarket.io.protocol.out.QueryList;

/*********************************************************
 * @author : zhaohua
 * @version : 2012-11-5
 * @see : 物流查询接口
 * @Copyright : copyrights reserved by personal 2007-2012
 **********************************************************/
public class TransQueryAction extends HttpAction<QueryList>
{
//    companyNum  是   C   公司编号
//    companyName 是   C   公司名称
//    oid         是   N   订单编号
//    paperType   是   C   材质编号
//    degree      是   N   度数
//    date        是   C   交货日期(使用选填，不要用打字输入方式)
//    page        是   N   页码（默认0）
//    pageNum     是   N   页数（默认10）   
    public TransQueryAction(String companyName, String companyNum)
    {
        super("6");
        addJsonParam("companyNum", companyNum);
        addJsonParam("companyName", companyName);
    }
    
    public void setPage(int page, int pageNum)
    {
        addJsonParam("page", page <= 0 ? 1 : page);
        addJsonParam("pageNum", pageNum);
    }
    
    public void setNextPage()
    {
        if(result != null && result.isNoError())
        {
            Integer page  = (Integer)getJsonParam("page");
            Integer pageNum  = (Integer)getJsonParam("pageNum");
            
            if(page != null && pageNum != null)
            {
                page++;
                setPage(page, pageNum);
            }
        }
    }
    
    public boolean isFirst()
    {
        Integer page  = (Integer)getJsonParam("page");
        return page != null ? page == 0 : true;
    }
    
    public void setOId(int oid)
    {
        if(oid > 0) addJsonParam("oid", oid);
        else addJsonParam("oid", null);
    }
    
    public void setPaperType(String paperType)
    {
        addJsonParam("paperType", paperType);
    }
    
    public void setDegree(int degree)
    {
        if(degree >= 0) addJsonParam("degree", degree);
        else addJsonParam("degree", null);
    }
    
    public void setDate(String date)
    {
        addJsonParam("date", date);
    }

    @Override
    protected QueryList parseJson(String response) throws Exception
    {
        QueryList one = new QueryList();
        one.parseResult(response);
        return one;
    }
}